package com.xjy.system.service;

import com.xjy.system.domain.ReportContractResult;
import com.xjy.system.domain.vo.ReportContractResultVo;
import com.xjy.system.domain.bo.ReportContractResultQueryBo;
import com.xjy.system.domain.bo.ReportContractResultAddBo;
import com.xjy.system.domain.bo.ReportContractResultEditBo;
import com.xjy.common.core.mybatisplus.core.IServicePlus;
import com.xjy.common.core.page.TableDataInfo;

import java.util.Collection;
import java.util.List;

/**
 * VIEWService接口
 *
 * @author xjy
 * @date 2022-04-03
 */
public interface IReportContractResultService extends IServicePlus<ReportContractResult> {
	/**
	 * 查询单个
	 * @return
	 */
	ReportContractResultVo queryById(Long id);

	/**
	 * 分页查询列表
	 */
    TableDataInfo<ReportContractResultVo> queryPageList(ReportContractResultQueryBo bo);

	/**
	 * 查询列表
	 */
	List<ReportContractResultVo> queryList(ReportContractResultQueryBo bo);

	/**
	 * 根据新增业务对象插入VIEW
	 * @param bo VIEW新增业务对象
	 * @return
	 */
	Boolean insertByAddBo(ReportContractResultAddBo bo);

	/**
	 * 根据编辑业务对象修改VIEW
	 * @param bo VIEW编辑业务对象
	 * @return
	 */
	Boolean updateByEditBo(ReportContractResultEditBo bo);

	/**
	 * 校验并删除数据
	 * @param ids 主键集合
	 * @param isValid 是否校验,true-删除前校验,false-不校验
	 * @return
	 */
	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}
